ActionController::Routing::Routes.draw do |map|
  # The priority is based upon order of creation: first created -> highest priority.
  
  # Sample of regular route:
  # map.connect 'products/:id', :controller => 'catalog', :action => 'view'
  # Keep in mind you can assign values other than :controller and :action

  # Sample of named route:
  # map.purchase 'products/:id/purchase', :controller => 'catalog', :action => 'purchase'
  # This route can be invoked with purchase_url(:id => product.id)
  
  # Home
  map.home '', :controller => "projects", :action => "list";
  
  # List of projects of some user
  map.projects_by_user 'user/:id/projects', :controller => "projects", :action => "by_user";
  
  # Showing profile of users
  map.user 'user/:id', :controller => "users", :action => "show";
  
  map.project_notes 'project/notes/:id', :controller => "notes", :action => "list";
  
  map.project_documents 'project/documents/:id', :controller => "documents", :action => "list";
  
  # Project default
  map.project 'project/:name/:id', :controller => "projects", :action => "show";

  # Allow downloading Web Service WSDL as a file with an extension
  # instead of a file named 'wsdl'
  map.connect ':controller/service.wsdl', :action => 'wsdl';


  # Install the default route as the lowest priority.
  map.connect ':controller/:action/:id.:format';
  map.connect ':controller/:action/:id';
  
  # Templates with subpages
  map.connect ':controller/:action/:subpage/:id';
end
